package com.flyduck.vueshop.system.admin.vo;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * <p>
 * SysMenuSaveReqVO
 * </p>
 *
 * @author flyduck
 * @since 2024-06-03
 */
@Data
public class AdminMenuUpdateReqVO implements Serializable {

    @NotNull(message = "菜单id不能为空")
    private Long id;

    /**
     * 父菜单ID，一级菜单为0
     */
    @NotNull(message = "上级菜单不能为空")
    private Long parentId;

    /**
     *
     */
    @NotBlank(message = "菜单名称不能为空")
    private String title;

    /**
     * 菜单URL
     */
    private String path;

    /**
     * 授权(多个用逗号分隔，如：user:list,user:create)
     */
    @NotBlank(message = "菜单授权码不能为空")
    private String perms;

    /**
     *
     */
    private String component;

    /**
     * 类型     0：目录   1：菜单   2：按钮
     */
    @NotNull(message = "菜单类型不能为空")
    private Integer type;

    /**
     * 菜单图标
     */
    private String icon;

    /**
     * 排序
     */
    private Integer sortOrder;

    /**
     *
     */
    @NotNull(message = "状态不能为空")
    private Integer status;
}
